1pub const CallModifier = enum {
2 /// Equivalent to function call syntax.
3 auto,
4
5 /// Prevents tail call optimization. This guarantees that the return
6 /// address will point to the callsite, as opposed to the callsite's
7 /// callsite. If the call is otherwise required to be tail-called
8 /// or inlined, a compile error is emitted instead.
9 never_tail,
10
11 /// Guarantees that the call will not be inlined. If the call is
12 /// otherwise required to be inlined, a compile error is emitted instead.
13 never_inline,
14
15 /// Asserts that the function call will not suspend. This allows a
16 /// non-async function to call an async function.
17 no_suspend,
18
19 /// Guarantees that the call will be generated with tail call optimization.
20 /// If this is not possible, a compile error is emitted instead.
21 always_tail,
22
23 /// Guarantees that the call will be inlined at the callsite.
24 /// If this is not possible, a compile error is emitted instead.
25 always_inline,
26
27 /// Evaluates the call at compile-time. If the call cannot be completed at
28 /// compile-time, a compile error is emitted instead.
29 compile_time,
30};
31
32// syntax